1. Field of the Invention
The present invention relates to a graphic processing method for increasing graphic quality in for example a color printer, and a graphic processor or processing system adopting this method.
2. Description of the Related Art
FIG. 20 is a block diagram showing the outline configuration of the graphic processor in the conventional color printer. Generally, data given to printer comprise bitmap graphics data of photography etc. font data to form characters, and vector form data to represent figure. Each of these data are assembled on the same page by logical calculation of laying over to overlap with each other with half transparent paint etc. in accordance with representing order. So, all the input data need to be transformed to the same internal gradation graphics data which have same resolution. Therefore, to begin with, bitmap graphics data is inputted to a zooming means 1 for transforming it to the resolution of internal gradation graphics in printer. Font data is inputted to a font representing means 2. Vector form figure data is inputted to a vector representing means 3. And, each of inputted data are transformed to the format of internal gradation graphics data by each means respectively so as to be inputted to a gradation pixel data generating means 4.
In this occasion, the gradation pixel data generating means 4 executes logical calculation between the gradation value stored in the gradation pixel data generating means 4 and the gradation value newly obtained according to prescribed logical calculation code to generate gradation pixel data so as to perform graphic processing of laying over, painting with half transparent paint, inverting or deleting of color, etc.
FIG. 21 is a block diagram showing the configuration of gradation pixel data generating means 4. The gradation pixel data generating means 4 comprises a memory address calculating means 41 to calculate addresses in internal gradation graphics memory 5 which is determined uniquely with the input coordinates value; a pixel buffer 42 to store pixel data; and a logic calculating means 43 to perform logical calculation between the gradation value inputted from the zooming means 1, font representing means 2 and vector representing means 3 and the gradation value given from the pixel buffer 42, according to the inputted logical calculation code. To the gradation pixel data generating means 4 inputted are coordinates (x,y), gradation value, and logic calculation code in accordance with the representation order of the application document not shown in the drawings.
These coordinates (x,y), gradation value, and logic calculation code are as shown in FIG. 21 inputted respectively from the zooming means 1, the font representing means 2, and the vector representing means 3.
Here, described is an operation when a laying over figure is performed. In FIG. 21, at first, the internal gradation graphics data from zooming means 1 is stored in the internal gradation graphics data memory 5 through the logical calculating means 43 and pixel buffer 42. At second, the other internal gradation graphics data from font representing means 2 is laid over the internal gradation graphics data already stored in the int.grad.graphics data memory 5. At this time, next operation is performed. This time, the calculating code is not through, but is OR logic. And, the logical calculating means 43 operates.
A gradation value is abstracted from a pixel (which makes up graphics data) stored in the int.grad.graphics memory 5 at the address corresponding to the coordinates inputted from font representing means 2. This gradation value is inputted to the pixel buffer 42. And, OR logic calculation between the inputted gradation value from font representing means 2 and the stored gradation value in pixel buffer 42 is performed in the logical calculating means 43. And, the pixel data obtained as a result of this calculation is written back to the pixel buffer 42. When the logic calculation is finished, the pixel data stored in pixel buffer 42 is written back to the int.grad.graphics memory at the indicating address.
By the way, in the conventional graphic processor, the general format of internal gradation pixel data is as shown in FIG. 22 comprises a packed data of 24 bits consisted of each data of 8 bits which realizes 256 gradation per each color element of Y (yellow), M (magenta) and C (cyan).
This internal gradation pixel data is transformed to the bitmap color graphics corresponding to the resolution of printer by the bitmapping means 6, so as to be printed. The control of the printing operation is processed by the print controlling means 7. The print controlling means 7 outputs printing coordinates to the bitmapping means 6. The bitmap data outputted from bitmapping means 6 is sent to the print mechanism 8. The print controlling means 7 performs printing indication to the print mechanism 8, so as to print the inputted bitmap data in order of coordinates.
As a method of transforming the gradation pixel data to the bitmap graphics, here described is a method of using a dithered screen, referring to FIG. 23. FIG. 23 is a block diagram showing the configuration of bitmapping means 6. The bitmapping means 6 comprises a memory address calculating means 61 for calculating an address of int.grad.graphics memory 5 which is decided with the inputted coordinates uniquely, a pixel buffer 62 for storing the gradation value which is abstracted from the grad.pixel data of the inputted graphics data from int.grad.graphics memory 5, a dithered screen generating means 63 for generating a threshold value corresponding to this inputted coordinates value, and a comparator 64 for generating a representation bit value from the inputted gradation value from pixel buffer 62 and the inputted threshold value from dithered screen generating means 63.    1) When a pair of print coordinates (x,y) is inputted to the bitmapping means 6 from the print controlling means 7, an address of int.grad.graphics memory 5 corresponding to the coordinates (x,y) is calculated by the memory address calculating means 61. And, the pixel data of graphics data in int.grad.graphics memory corresponding to this address is read, so as to abstract the gradation value from this pixel data. This gradation value is read into the pixel buffer 62.    2) On the other hand, the print coordinates (x,y) is also inputted to the dithered screen generating means 63, so as to generate the threshold value corresponding to this coordinates value.    3) Each gradation value of YMC read in pixel buffer 62 and the corresponding threshold value generated by dithered screen generating means 63 are inputted to the comparator 64. Then, if the gradation value of pixel buffer 62 is more than or equal to the threshold value, a representation bit value “1” is put out of the comparator 64. If the gradation value of pixel buffer 62 is less than the threshold value, representation bit value “0” is put out of the comparator 64.
By the method mentioned above, gradation graphics is transformed to bitmap graphics, so as to be printed.
By the way, recently a printer with higher graphic quality like photography is demanded as color printing technique progresses. For example, the gradation number is to be improved to 24 bits and the gradation is to be improved to 1200 DPI (Dot Per Inch), or 2400 DPI so as to smooth the edges of letters.
However, 1.5 Gbytes of memory capacity is needed for representing one page of A4 size sheet when the int.grad.data format of 256 gradation 1200 DPI is adopted. As a result, the cost of memory suddenly rises. Adding to this, the speed of printing suddenly falls as a mass of graphics data is processed in printing.
On the other hand, as a characteristic of the sense of human sight, human eyes are sensitive to the gradation of graphics when the graphic density is low but the sensibility drops gradually as the graphic density increases higher. And, it is known that it reaches to bitmap level as the graphic density reached to about 600 DPI. FIG. 24 is a graph showing the relationship between the resolution and the sensible gradation number at the sight of 30 centimeter distance. As plotting a point of 256 gradation 2400 DPI for example on this graph, it will be realized that the point is far from the sensibility of human eyes and the data is prolix.